一个数组int a[63],数组的元素只取0和1,要求有10个元素取1,其他的都取0,如何得到所有的可能取法?

来源:百度知道 编辑:UC知道 时间:2024/05/24 00:53:05
一个数组int a[63],数组的元素只取0和1,要求有10个元素取1,其他的都取0,如何得到所有的可能取法?用c++语言。
不是问取法的个数。而是要求出所有的枚举的情况。

不是排列组合的c63,10 吗?

排列组合C(63,10)
= 63! / [63-10]! / 10 !
= 63*62*61...*54 / 10 !
#include <stdio.h>

void main()
{
double x=1.0;
int i;
for (i=54;i<=63;i++) x = x * (double) i;
// printf("%.0lf\n",x );
for (i=2;i<=10;i++) x = x / (double) i;
printf("%.0lf\n",x );
}